﻿using Microsoft.CodeAnalysis;

namespace UIOC.CodeAnalysis.Diagnostics;

internal static class CS0695_CompilerDiagnostic {

    public const string DiagnosticId = "CS0695";

    private const string Title = "泛型类型不能同时实现同一接口的不同构造形式";
    private const string MessageFormat = "'{0}' 不能同时实现 '{1}' 和 '{2}'，因为它们可能统一为相同的接口类型";
    private const string Description = "泛型类型实现同一接口的不同构造形式可能导致歧义，因为在某些情况下它们会被视为相同的接口。";
    private const string Category = "Design";

    public static readonly DiagnosticDescriptor Rule = new(
        DiagnosticId,
        Title,
        MessageFormat,
        Category,
        DiagnosticSeverity.Error,
        isEnabledByDefault: true,
        description: Description
    );
}
